1. Technical Field of the Invention
This invention relates to system performance monitoring. More particularly, it relates to a performance monitor with user adjustable tuning bias.
2. Background Art
Referring to FIG. 1, a system and method for monitoring performance of an information management system (IMS) 106 extends (that is, sets a hook 82 in) IMS subsystem tasks 80 with non-native user code 84 and writes user log records 88 to IMS log 86, then subsequently runs a batch transaction transit time (TTT) calculator program 92 to post-process IMS log 86.
The drawbacks of this technique are several. 1) Transaction transit times are not available in real time. 2) There is a substantial Direct Access Storage Device (DASD) 86 expense for retaining user log records 88 and a substantial subset of other IMS log records 90 required to make the TTT calculations. 3) Processing the collection of log records 88, 90 requires CPU and memory to make transaction transit time calculations. If memory is exhausted, batch program 92 is terminated and TTT calculation cannot continue. 4) Hooking the IMS sub-system could cause IMS subsystem 106 to abnormally terminate since user code 84 runs as an extension to IMS code 80.
Referring to FIG. 2, IBM performance monitor (PM) calculates in real-time (as opposed to batch) transaction transit times (TTTs) 118 for each individual transaction represented by a unique unit of work (UOW) 104 processed by an IMS subsystem 106. An IMS subsystem 106, 108, 110 is a collection of IMS address spaces, each having characteristics similar to IMS performance monitor (PM) address space 108.
Transaction transit time (TTT) calculator task 112 requires more resources than the sum of all other IMS performance monitor tasks combined. The number of units of work (UOW) in-flight 116 at any point in time, available CPU resources 100, and available memory resources 102 vary widely among IMS subsystem installations. IMS subsystem 106, IMS PM address space 108, and IMS PM data space 110 must share CPU resources 100 and memory resources 102 to process and monitor IMS transactions 104. Each in-flight unit of work 116 must be kept track of by in-flight transaction vector 114 and left active in IMS PM data space 110 until it is complete and its transaction transit times 118, including input queue time (IQT) 210, program execution time (PET) 212, and output queue time (OQT) 214 can be calculated.
The nature of performance monitoring is that the monitor itself must not impose more CPU and memory consumption on the system than the reduction realized by using the information it provides to tune the system. Therefore, it is important to provide users a fast-access, low-resource-impact algorithm for maintaining in memory 110 in-flight units of work 116.